import Cookies from 'js-cookie'
import { useUserStoreHook } from '@/store/modules/user'

const TokenKey = 'authorized-token'

// 获取token
export function getToken() {
  // 此处与TokenKey相同，此写法解决初始化时Cookies中不存在TokenKey报错
  if (Cookies.get('authorized-token')) {
    return Cookies.get('authorized-token')
  }
}

// 设置token以及过期时间（cookies、sessionStorage各一份）
// 后端需要将用户信息和token以及过期时间都返回给前端，过期时间主要用于刷新token
export function setToken(token:string) {
  // 提取关键信息进行存储
  useUserStoreHook().SET_TOKEN(token)
  Cookies.set(TokenKey, token)
  localStorage.setItem(TokenKey, token)
}

// 删除token
export function removeToken() {
  Cookies.remove(TokenKey)
  localStorage.removeItem(TokenKey)
}
